package ar.edu.utn.frba.dds.opendesigners.aerolineas.oceanic;

import ar.edu.utn.frba.dds.opendesigners.resultados.VueloDirecto;

import com.oceanic.AsientoDTO;

public class ConversorAsientosOceanic {

	public VueloDirecto convertirAsiento(AsientoDTO asientoDTO, OceanicAdapter oceanic) {
		VueloDirecto asiento = new VueloDirecto();
		asiento.setNumeroVuelo(asientoDTO.getCodigoDeVuelo());
		asiento.setAerolinea(oceanic);
		asiento.setPrecio(asientoDTO.getPrecio());
		asiento.setUbicacion(this.posicionAsiento( asientoDTO.getUbicacion() ));
		asiento.setNumeroAsiento(this.numeroAsiento( asientoDTO.getNumeroDeAsiento() ));
		asiento.setTipo(this.tipoDeAsiento( asientoDTO.getClase() ));
		asiento.setEstado(asientoDTO.getReservado());
		return asiento;
	}

	//Retorna el primer caracter de la cadena identificadora de TIPO DE ASIENTO
	private char tipoDeAsiento(String clase) {
		return (clase.toCharArray())[0];
	}
	
	//Retorna la representación de NUMERODEASIENTO en STRING
	private String numeroAsiento(Integer numeroDeAsiento) {
		return numeroDeAsiento.toString();
	}
	
	//Retorna el primer caracter de la UBICACION identificadora de LOCALIZACION DE ASIENTO
	private char posicionAsiento(String ubicacion) {
		return (ubicacion.toCharArray())[0];
	}
}
